#include <stdio.h>
#include <string.h>

/*
文件拷贝
dest 目标文件名
src  源文件名
*/
void file_op(const char *file1, const char *file2, const char *file3)
{
    // 打开文件
    FILE *fp_file1 = fopen(file1, "w+"); // 覆盖写
    FILE *fp_file2 = fopen(file2, "r");
    FILE *fp_file3 = fopen(file3, "r");

    // 将src的内容复制到dest
    // fgetc和fputc的光标会自动往后移
    char ch;
    // 一个一个字符读入
    for (int i = 0; EOF != (ch = fgetc(fp_file2)); i++)
    {
        fputc(ch, fp_file1);
    }

    //追加写,此时光标在文件末尾
    for (int i = 0; EOF != (ch = fgetc(fp_file3)); i++)
    {
        fputc(ch, fp_file1);
    }
    // 关闭文件
    fclose(fp_file1);
    fclose(fp_file2);
    fclose(fp_file3);
}
int main(int argc, char const *argv[])
{
    if (argc == 4)
    {
        file_op(argv[1], argv[2], argv[3]);
    }
    else
        printf("运行程序格式错误,请按%s file1 file2 file3 的格式输入\n", argv[0]);
    return 0;
}
